<?php session_start(); // 启动 session
include '../db.php'; // 包含数据库连接文件
?>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>提交消息/查看记录</title>
    <link rel="stylesheet" href="/styles.css">
</head>
<body>
    <div class="container">
        <div class="card">
            <h1>消息管理</h1>
            <p class="info message">欢迎你: <?php echo $_SESSION['username']?></p>
            <div style="text-align: right;">
                <a href="../User/logout.php" class="action-link delete">退出登录</a>
            </div>
        </div>
        
        <div class="card">
            <h2 class="table-title">提交新消息</h2>
            <form action="messages.php" method="post">
                <input type="hidden" name="username" value="<?php echo $_SESSION['username']; ?>">
                
                <label for="title">消息内容:</label>
                <input type="text" id="title" name="title" required>
                
                <label for="messages_index">是否公开消息:</label>
                <select name="messages_index" id="messages_index">
                    <option value="是">是</option>
                    <option value="否">否</option>
                </select>
                
                <input type="submit" value="提交">
            </form>
        </div>
        
        <div class="card">
            <h2 class="table-title">消息列表</h2>
            <div class="table-container">
                <table>
                    <tr>
                        <th>ID</th>
                        <th>用户</th>
                        <th>消息</th>
                        <th>时间</th>
                        <?php if($_SESSION['userType'] == '管理员'):?>
                            <th>操作</th>
                        <?php endif?>
                    </tr>
                    <?php
                    $sql = "SELECT msgtable.id, username, messages, msg_datetime FROM msgtable, usertable
                    WHERE msgtable.user_id = usertable.id AND messages_id IN (1,2)"; // 查询所有消息
                    $result = $conn->query($sql); // 执行查询
                    if ($result->num_rows > 0) { // 如果有结果
                        while($row = $result->fetch_assoc()) { // 遍历结果
                            echo "<tr>"; // 输出表格行
                            echo "<td>{$row["id"]}</td>"; // 输出消息 ID
                            echo "<td>{$row["username"]}</td>"; // 输出用户名
                            echo "<td>{$row["messages"]}</td>"; // 输出消息内容
                            echo "<td>{$row["msg_datetime"]}</td>"; // 输出消息时间
                            if ($_SESSION['userType'] == '管理员') { // 如果是管理员
                                echo "<td>
                                <a href='up_de.php?id={$row["id"]}&update=1' class='action-link update'>修改</a>
                                <a href='up_de.php?id={$row["id"]}&delete=1' class='action-link delete'>删除</a>
                                </td>";
                            } // 输出操作链接
                            echo "</tr>"; // 输出表格行结束标记
                        }
                    } else { // 如果没有结果
                        echo "<tr><td colspan='4'>没有消息</td></tr>"; // 输出提示信息
                    }
                    ?>
                </table>
            </div>
            <div style="margin-top: 20px; text-align: center;">
                <a href="../PHP_index/user_index.php" class="action-link">返回</a>
            </div>
        </div>
    </div>
    <?php include '../footer.php'; ?>
</body>
</html>
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') { // 如果有提交请求
    $user = $_POST['username']; // 获取用户名
    $title = $_POST['title']; // 获取消息标题
    $messages_index = $_POST['messages_index']; // 获取是否公开消息
    if ($title) { // 如果有消息标题
        $sql = "INSERT INTO msgtable (messages_id, user_id, messages, msg_datetime, messages_index) 
        VALUES (0, (SELECT id FROM usertable WHERE username = '$user'), '$title', NOW(), '$messages_index')"; // 插入消息
        if ($conn->query($sql) === TRUE) { // 如果插入成功
            echo "
            <script>
                alert('消息提交成功'); // 弹出提示框
                window.location.href = 'messages.php'; // 重新加载页面
            </script>
            "; // 输出成功信息
        } 
        else { // 如果插入失败
            echo "
            <script>
                alert('消息提交失败'); // 弹出提示框
            </script>
            "; // 输出错误信息
        }
    }
}
$conn->close(); // 关闭数据库连接
?>